Developer Documentation
PATH
Mac OS 8 and 9 Developer Documentation > Carbon


Carbon is a set of programming interfaces you can use to build Mac OS X applications that can also run on Mac OS 8 and 9 (versions 8.1 and later). Carbon includes about 70 percent of the existing Mac OS APIs, covering about 95 percent of the functions commonly used by applications. In addition to supporting the majority of the existing Mac OS APIs, CarbonLib 1.0 supplies whole new groups of APIs previously unavailable in Mac OS, such as Core Foundation and the Carbon Printing Manager. In addition to these entirely new technologies, there are new Carbon calls in such existing Mac OS technologies as the Window Manager and Menu Manager. You can find documentation for both new and old Carbon calls on the Mac OS 8 and 9 Developer Documentation site. If you want to find out if a given call is supported in Carbon, the quickest way is to check the Carbon Specification or to use the Carbon Dater.


Carbon Dater
The Carbon Dater is a tool that analyzes compiled applications and libraries for compatibility with Carbon. You can use Carbon Dater to obtain information about the compatibility of your existing code and the scope of your future conversion efforts. Carbon Dater works by examining PEF containers in application binaries and CFM libraries. It compares the list of Mac OS symbols your code imports against Apple's database of Carbon-supported functions. The information gathered by Carbon Dater is then used to create a custom compatibility report for your application. For many of the unsupported functions that your application might call, the report describes how to modify your application to make it Carbon compatible.
Carbon Overview
This document provides a brief overview of Carbon's present (CarbonLib 1.0) and future (Carbon on Mac OS X) direction.

Carbon Specification
The "Carbon Specification" describes the level of Carbon support for every function in Mac OS 8 and 9. In an exhaustive listing, the "Carbon Specification" describes for every Mac OS manager whether each of its functions is fully supported; is supported but modified in some way from how it is used in previous versions of the Mac OS; is supported but not recommended--that is, you can use the function, but it may not be supported in the future; or is unsupported. For many of the functions that aren't fully supported in Carbon, the "Carbon Specification" also describes how to modify your code to use fully compatible functions. Updated October 6, 1999.

CarbonLib Porting Guide [PDF]
This guide is for Mac OS 9 developers who want to port their applications to use the Carbon API. The "CarbonLib Porting Guide" provides an overview of the Carbon interface, guidelines for converting your application, and specific information on how to build Carbon applications. Note that this document is a subset of the "Carbon Porting Guide" document, which additionally covers aspects of Mac OS X beyond CarbonLib and is available to registered developers. The "CarbonLib Porting Guide" is currently available in PDF format only.
Mac OS 9 Technote
The Mac OS 9 Technote has a special section discussing CarbonLib 1.0.

[Mac OS 8 and 9 | Mac OS X | Hardware | QuickTime | Java | WebObjects] [Feedback]